export type FieldEnumField={
    key:string,
    name:string,
    showGroup?:number,   //展示属性行分组  分组标识一样的排在一行  无初始值使用缺省行
    showCompareWithCfg?:number,   //展示属性时 是否和config比对 无初始值默认为false
}

export  class FieldEnum{


    //单位自定义 管控值属性等
    //sdesc 是否特殊描述 动态转换物品描述时使用特殊逻辑
    static ATTR_FIELD={
        atk:{key:"atk",name:"攻击力",showGroup:1,showCompareWithCfg:true},   //绿字攻击力 (不包含光环值)
        def:{key:"def",name:"护甲",showGroup:2,showCompareWithCfg:true},   //绿字防御力 (不包含光环值)
        hp:{key:"hp",name:"生命",showGroup:3,showCompareWithCfg:true},    //绿字生命
        mp:{key:"mp",name:"能量",showGroup:3},    //绿字魔法
        aspd:{key:"aspd",name:"攻速"},  //绿字攻速 (不包含光环值)
        mov:{key:"mov",name:"移速"},   //绿字移动 (不包含光环值)
        hpr:{key:"hpr",name:"生命恢复"},   //生命恢复
        mpr:{key:"mpr",name:"能量恢复"},   //魔法恢复

        str:{key:"str",name:"坚韧"},   //百分比转换为韧性(boss面对N个玩家的情况倍率会不同) 物理技能穿透抵抗 物理免暴几率
        agi:{key:"agi",name:"敏锐"},   //防御技巧 (影响完美格挡,防反,闪避的回报收益)  一定命中 一定闪避  一定攻速移速
        int:{key:"int",name:"法能"},   //法伤   能量max  法术技能穿透抵抗  法术免暴几率

        tena:{key:"tena",name:"韧性"}, //不包含力量部分的韧性  (韧性被削弱至0 会进入破绽状态)
        bt:{key:"bt",name:"破招"}, // 在破招帧进行削韧打击的增幅  1点:1%增幅
        dtg_i:{key:"dtg_i",name:"削韧增幅"}, //进行削韧打击时的削韧增幅  1点:1%增幅   与其他削韧增幅计算方式为A类  破招增幅+削韧增幅+其他增幅
        dtg_r:{key:"dtg_r",name:"削韧抵抗"}, //受到削韧打击时的削韧抵抗  1点:1%抵抗
        dtg_n:{key:"dtg_n",name:"普攻削韧"},  //  普攻能够带出的削韧 （普攻削韧的最主要手段 dtg_i,bt加成此值）

        hit:{key:"hit",name:"命中"},   //命中 
        flee:{key:"flee",name:"闪避"},  //不包含敏捷转换部分的闪避 物理+法术
        cri:{key:"cri",name:"会心"},   //物理,法术暴击
        cri_mul:{key:"cri_mul",name:"会心倍率"}, //物理,法术暴击伤害倍率
        r_cri:{key:"r_cri",name:"会心抵抗"},   //会心抵抗,物理法术 （一般来自力,智之外的途径）

        aia:{key:"aia",name:"技能穿透"},  //技能无视护甲加成百分比
        feel:{key:"feel",name:"感知"},   //对于破绽状态敌人乘法伤害加成  强化成功率 掉率
        steal:{key:"steal",name:"生命窃取",sdesc:true},   //生命窃取值:生命窃取值*难度系统倍率+ (%0.01*窃取值)*最大生命值修正    
        gb_dmg:{key:"gb_dmg",name:"全局增伤"},
        gb_rde:{key:"gb_rde",name:"全局减伤"},
        a_skill:{key:"a_skill",name:"主动技能",sdesc:true},
        p_skill:{key:"p_skill",name:"被动技能",sdesc:true}

            //dtg:{key:"dtg",name:"崩解"},  //技能削韧 破招代替  暂废

    }


    // static GetEnumTableWithVal(tbl:any, val:any){ 
    //     //assert(IsTable(tbl)) 
    //     let enumtbl:any = {} 
    //     //let enumindex : index or 0 
    //     //let xt:pairs(tbl)
    //     for(let i in tbl){ 
    //         enumtbl[i] = val || 0
    //     }
    //     return enumtbl 
    // }

    // //单位所有属性的大分类 初衷是作为几个大分类方便管理
    // // cunitf:是否会影响单位的属性变化
    // static UNIT_FIELD_M_TYPE={
    //     name:{key:"name",cunitf:false},   
    //     enh_n:{key:"enh_n",cunitf:false},   
    //     lvl:{key:"lvl",cunitf:false},   
    //     p_skill:{key:"p_skill",cunitf:true},  
    //     a_skill:{key:"a_skill",cunitf:true},  
    //     field:{key:"field",cunitf:true},     
    //     dt_res:{key:"dt_res",cunitf:true},
    //     dt_enh:{key:"dt_enh",cunitf:true}
    // }




    // //单位自定义属性配置 最大值 id前缀等
    // static UNIT_FIELD_CONFIG={
    //     atk:{
    //         max:131072,
    //         bitnum:17,
    //         binary_rel_set:true, //是否使用二级制计算
    //         id_prefix:'LX'
    //     },   //绿字攻击力 (不包含光环值)
    //     def:{
    //         max:131072,
    //         bitnum:17,
    //         binary_rel_set:true,
    //         id_prefix:'LD'
    //     },   //绿字防御力 (不包含光环值)
    //     aspd:{
    //         id:"aspd",
    //         max:2048,
    //         bitnum:11,
    //         binary_rel_set:true,
    //         id_prefix:'LA'
    //     },   //绿字攻速 (不包含光环值)
    //     hpr:{
    //         max:8192,
    //         bitnum:13,
    //         binary_rel_set:true,
    //         id_prefix:'LR'
    //     },   //生命恢复 
    //     str:{
    //         max:8192,
    //         bitnum:13,
    //         binary_rel_set:true,
    //         id_prefix:'HS'
    //     },   //绿字力量
    //     agi:{
    //         max:8192,
    //         bitnum:13,
    //         binary_rel_set:true,
    //         id_prefix:'HA'
    //     },   //绿字敏捷 
    //     int:{
    //         max:8192,
    //         bitnum:13,
    //         binary_rel_set:true,
    //         id_prefix:'HI'
    //     },   //绿字智力 
    //     hp:{
    //         id_prefix:'HP'
    //     },    //绿字生命 japi
    //     mp:{
    //         id_prefix:'MP'
    //     }    //绿字魔法 japi

    // }

}

